import request from '@/utils/request'

/**
 * 创建数据字典
 * @param systemDictType 单个数据字典
 */
export function requestSystemDictTypeCreate(systemDictType) {
  return request({
    url: '/api/sys/dictType/insert',
    method: 'post',
    data: systemDictType,
  })
}

/**
 * 删除单个数据字典
 * @param {id} ID
 */
export function requestSystemDictTypeDelete({ id }) {
  return request({
    url: `/api/sys/dictType/delete/${id}`,
    method: 'post',
  })
}

/**
 * 批量删除数据字典
 * @param list 待删除的数据字典列表
 */
export function requestSystemDictTypeBatchDelete(list) {
  return request({
    url: `/dict/dict/deleteBatch`,
    method: 'post',
    data: list.map((item) => item.id),
  })
}

/**
 * 更新数据字典
 * @param systemDictType 单个数据字典
 */
export function requestSystemDictTypeUpdate(systemDictType) {
  return request({
    url: `/api/sys/dictType/update`,
    method: 'post',
    data: systemDictType,
  })
}

/**
 * 通过Id获取数据字典信息
 * @param id 单个数据字典
 */
export function requestSystemDictTypeGet(id) {
  return request({
    url: `/data/dict/type/id/${id}`,
    method: 'get',
  })
}

/**
 * 查询数据字典列表
 * @param listParams 列表参数
 */
export function requestSystemDictTypeList(listParams) {
  return request({
    url: '/data/dict/type/list',
    method: 'post',
    data: listParams,
  })
}

/**
 * 查询数据字典分页
 * @param pageParams 分页参数
 */
export function requestSystemDictTypePage(pageParams) {
  return request({
    url: '/api/sys/dictType/page',
    method: 'post',
    data: pageParams,
  })
}

// ===========================================================================================================

/**
 * 创建字典数据
 * @param systemDict 单个字典数据
 */
export function requestSystemDictCreate(systemDict) {
  return request({
    url: '/api/sys/dict/insert',
    method: 'post',
    data: systemDict,
  })
}

/**
 * 删除单个字典数据
 * @param {id} ID
 */
export function requestSystemDictDelete({ id }) {
  return request({
    url: `/api/sys/dict/delete/${id}`,
    method: 'post',
  })
}

/**
 * 批量删除字典数据
 * @param list 待删除的字典数据列表
 */
export function requestSystemDictBatchDelete(list) {
  return request({
    url: `/sys/dict/item/batchDelete`,
    method: 'post',
    data: list.map((item) => item.id),
  })
}

/**
 * 更新字典数据
 * @param systemDict 单个字典数据
 */
export function requestSystemDictUpdate(systemDict) {
  return request({
    url: `/api/sys/dict/update`,
    method: 'post',
    data: systemDict,
  })
}

/**
 * 查询单个字典数据
 * @param systemDict 单个字典数据
 */
export function requestSystemDictGet(systemDict) {
  return request({
    url: `/sys/dict/item/get`,
    method: 'post',
    data: systemDict,
  })
}

/**
 * 查询字典数据列表
 * @param listParams 列表参数
 */
export function requestSystemDictList(listParams) {
  return request({
    url: '/sys/dict/item/list',
    method: 'post',
    data: listParams,
  })
}

/**
 * 查询字典数据分页
 * @param pageParams 分页参数
 */
export function requestSystemDictPage(pageParams) {
  return request({
    url: '/api/sys/dict/page',
    method: 'post',
    data: pageParams,
  })
}
